import java.util.*;


public class code2 {
    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     *
     * @param arr int整型一维数组 the array
     * @return int整型
     */
    public int maxLength (int[] arr) {
        //[2,1,3,1,2,3,7]两个left在一起
        //暴力：i重复，会退到j位置重新来
        int left = 0;
        int right = 0;
        int n = arr.length;
        int[] hash = new int[100010];
        int ret = 0;
        while(right < n) {
            //进
            hash[arr[right]]++;

            //判断
            while(hash[arr[right]] > 1) {
                //出
                hash[arr[left]]--;
                left++;
            }
            ret = Math.max(ret,right-left+1);
            right++;
        }
        return ret;
    }
}